# Create your views here.
from django.shortcuts import render_to_response
import os 
from django.forms import ModelForm
from django.db.models import Avg, Max, Min, Count
import datetime
from django.http import HttpResponse
from models import Categoria
from models import Evento
from django.shortcuts import get_object_or_404
from simpleline import *
from forms import FormEvento	


def index(request):
	data = datetime.datetime.now()
	x = 1
	context = []
	for x in range(1,4):
  
		evento = list(Evento.objects.filter(datahora__year=data.year).filter(datahora__month=data.month).filter(datahora__day=data.day)\
				 .filter(categoriaid=x))	
	
		if evento != []:

			var = evento[0]
			context.append(var)
			
			listaValor = []
			listaTempo = []
			y = 0
			for y in range(len(evento)):
				listaValor.append(evento[y].valor)
				listaTempo.append(str(evento[y].datahora.hour) + ':' + str(evento[y].datahora.minute))

			GerarGrafico(listaValor, listaTempo, x)
		else:
			evento = Evento.objects.filter(categoriaid=x).filter(datahora__lt=data)[:1]
			filtroData = str(evento[0].datahora.year) + '-' + str(evento[0].datahora.month) + '-' + str(evento[0].datahora.day)
			evento = Evento.objects.filter(categoriaid=x).filter(datahora__contains=filtroData)
			
			var = evento[0]
			context.append(var)
			
			listaValor = []
			listaTempo = []
			y = 0
			for y in range(len(evento)):
				listaValor.append(evento[y].valor)
				listaTempo.append(str(evento[y].datahora.hour) + ':' + str(evento[y].datahora.minute))
				
			listaValor.reverse()
			
			GerarGrafico(listaValor, listaTempo, x)
	
	form = FormEvento()

	return render_to_response("index.html", {'temperatura': context[0], 'umidade': context[1], 'radiacao': context[2], 'form':form, 'evento':evento})

def buscar_grafico(request):
	
	try:
		valor = request.GET['valor']
	except:
		pass
	try:
		valor = request.GET['valor2']
	except:
		pass
	try:
		valor = request.GET['valor3']
	except:
		pass
	evento = Evento.objects.get(id=valor)

	filtroData = str(evento.datahora.year) + '-' + str(evento.datahora.month) + '-' + str(evento.datahora.day)
	evento = Evento.objects.filter(categoriaid=evento.categoriaid).filter(datahora__contains=evento.datahora.date)

	context = []
	listaValor = []
	listaTempo = []
	x=0
	for x in range(len(evento)):
		var = evento[x]

		context.append(var)

		listaValor.append(evento[x].valor)
		listaTempo.append(str(evento[x].datahora.hour) + ':' + str(evento[x].datahora.minute))
		
		ExibirGrafico(listaValor, listaTempo, var.categoriaid.id)

	
	return render_to_response("evento_exibir.html", {'evento': context, 'categoria': var})

	

